package com.doitedu.core2

import com.doitedu.utils.SparkUtil

import scala.collection.mutable

/**
 * @Date: 22.7.4 
 * @Author: HANGGE
 * @qq: 598196583
 * @Tips: 学大数据 ,到多易教育
 * @Description:
 */
object C07_测试累加器 {
  def main(args: Array[String]): Unit = {
    val sc = SparkUtil.getSparkContext("测试自定义累加器")
    val c = new C07_自定义累加器
    // 注册累加器
    sc.register(c)
    sc.textFile("data/word.txt")
      .flatMap(_.split("\\s+")).foreach(word => {
      c.add(word)
    }
    )
    // 各个Task汇总的全局结果  注意返回结果的数据量
    // 避免单词统计时的shuffle问题
    val res: mutable.Map[String, Int] = c.value
    res.foreach(println)

    sc.stop()


  }

}
